package conson.tech.manage.coupons.entity.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.time.LocalDate;
import java.time.LocalDateTime;

/**
 * InterfaceName: ActivityPageDto
 * Description: 领券活动列表查询入参实体
 * Author: XYF
 * Date: 2020/7/22 9:05
 * Version: 1.0
 */
@Data
public class ActivityPageDto implements Serializable {

    private static final long serialVersionUID = 5985960136333340981L;

    /**
     * 活动id
     */
    @ApiModelProperty(value = "活动id（非必填）")
    @JsonSerialize(using = ToStringSerializer.class)
    private Long id;
    /**
     * 活动名称
     */
    @ApiModelProperty(value = "活动名称（非必填）")
    private String activityName;
    /**
     * 申请人
     */
    @ApiModelProperty(value = "申请人名称（非必填）")
    private String applyName;
    /**
     * 状态  枚举，0请选择、1初始、2进行中、3已结束、4已作废、5 发放失败
     */
    @ApiModelProperty(value = "状态  枚举，0请选择、1初始、2进行中、3已结束、4已作废、5 发放失败（非必填）")
    private Integer status;
    /**
     * 领券类型，0定向发放、1直接领取
     */
    @ApiModelProperty(value = "领券类型 0定向发放、1直接领取（非必填） ")
    private Integer collectType;
    /**
     * 优惠券批次ids
     */
    @ApiModelProperty(value = "优惠券批次id（非必填）")
    @JsonSerialize(using = ToStringSerializer.class)
    private Long batchId;
    /**
     * 活动开始时间
     */
    @ApiModelProperty(value = "活动开始时间（非必填）")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private LocalDate startTime;
    /**
     * 活动结束时间
     */
    @ApiModelProperty(value = "活动结束时间（非必填）")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private LocalDate endTime;
}
